<?php

namespace app\api\controller;

use app\admin\model\Post;

/**
 * 图文接口
 */
class Posts extends Base
{

    // 获取全部图文列表
    public function index()
    {
        $list = Post::all();
        $this->result('ok', $list);
    }

    // 悦图籍配置接口
    public function config($v)
    {
        $adflag = true;
        $moreflag = true;
        if ($v == '1.2.1') {
            $adflag = false;
            $moreflag = true;
        }
        $flags = array(
            'adflag' => $adflag,
            'moreflag' => $moreflag,
        );
        $this->result('flag', $flags);
    }

    // 获取banner列表
    public function get_banner_list()
    {
        $banner_list = Post::all(['show_type' => 'banner_list']);
        $this->result('banner', $banner_list);
    }

    // 获取普通图文列表
    public function get_normal_list($page = 1)
    {
        $post_list = Post::where('show_type', 'normal_list')->limit(($page - 1) * 8, 8)->order('id', 'desc')->select();

        foreach ($post_list as $item) {
            $item->updatetime = date('m月d日 h:i', $item->updatetime);
        }

        $this->result('normal', $post_list);
    }

    // 通过id获取图文详细消息
    public function get_post($id)
    {
        $post = Post::where('id', $id)->select();
        $this->result('post', $post);
    }

    // 随机文章列表
    public function get_ramdom_list()
    {
        $this->get_random_list();
    }

    // 随机文章列表
    public function get_random_list()
    {
        $count = Post::count();
        $random_id = array();
        for ($i = 0; $i < 8; $i++) {
            array_push($random_id, rand(1, $count));
        }
        $random_list = Post::all($random_id);
        usort($random_list, array($this, "cmp_updatetime"));
        $this->result('random', $random_list);
    }

    // 对比更新时间排序
    public function cmp_updatetime($a, $b)
    {
        if ($a->updatetime == $b->updatetime) return 0;
        return ($a->updatetime > $b->updatetime) ? -1 : 1;
    }

}
